package com.atguigu.gmall.product.config;


import org.redisson.Redisson;
import org.redisson.api.RedissonClient;
import org.redisson.config.Config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;


/**
 * 给容器中放一个redisson的client，让redisson连接上redis进行复杂操作
 */
@Configuration
public class AppRedissonConfig {


    @Bean
    public RedissonClient redissonClient(){
        //1、创建一个配置对象
        Config config = new Config();
        //2、指定redis服务器地址
        // Redis url should start with redis:// or rediss:// (for SSL connection)
        config.useSingleServer()
                .setAddress("redis://192.168.200.200:6379")
                .setPassword("lfy123456");
        config.setLockWatchdogTimeout(30); //修改看门狗的时间


        //3、根据上面配置创建一个RedissonClient.以后用RedissonClient操作redis，就会有现成的分布式锁等功能
        RedissonClient redisson = Redisson.create(config);

        //只要名一样就是同一个map
//        RMap<Object, Object> map = redisson.getMap("haha");
//        map.put("aaa","vvv");  //这个map的数据在redis
        return redisson;

    }
}
